﻿/*
倚直线画圈 
Time Limit:1000MS  Memory Limit:32768K

  
Description:
鲁迅先生笔下的阿Q连圈都画不好，现在我们借助编程手段，可以对准直线自动地按要求画圈，不亦乐乎？
文本字符的圈虽然看上去有些粗糙，不过没有关系，只要是上下左右对称，粗细均匀，而且封闭就行。

Input:
圈的内部总是一个正方形，外部包围着一定粗细的线条，角部不用画出来。
给定的数据，每行为一组，包括用的字符笔，笔的粗细和圈内正方形的高度。
如果输入数据中笔粗和高度都为0，则结束处理。 
Output:
每个圈应倚着边上一直线，直线字符为B，每个圈之间有一个空行，第一个圈前面无空行。 
Sample Input:
A 1 3
F 3 5
A 0 0

Sample Output:
B AAA
BA   A
BA   A
BA   A
B AAA

B   FFFFF
B   FFFFF
B   FFFFF
BFFF     FFF
BFFF     FFF
BFFF     FFF
BFFF     FFF
BFFF     FFF
B   FFFFF
B   FFFFF
B   FFFFF
*/
#include <stdio.h>
#include <string.h>
#include <stdlib.h>

namespace ctb{
	inline void box(char c, unsigned t, unsigned w)
	{
		char* line1=new char[w+1];
		memset(line1, c, w);
		line1[w]='\0';	
		char* line2=new char[t+1];
		memset(line2, c, t);
		line2[t]='\0';
// 		puts(line1);
// 		puts(line2);

		for (unsigned i=1, h=t*2+w; i<=h; ++i)
		{
			putchar('B');

			if(i<=t || i>(t+w))
			{				
				printf("%*s\n", t+w, line1);
			}
			else
			{
				printf("%s%*s\n", line2, t+w, line2);				
			}
		}
		delete []line1;
		delete []line2;
	}
}
int main(int argc, char* argv[])
{
	unsigned w, t;
	char c;
	bool first_time=true;
	while (EOF!=scanf("%c%u%u", &c, &t, &w), t&&w)
	{
		if(!first_time)
			puts("");
		ctb::box(c, t, w);
		first_time=false;
		getchar();
	}
	return EXIT_SUCCESS;
}